Worst-Case Execution Time Analysis for Optimized Code

نویسنده

  • Jakob Engblom
چکیده

In the eld of real-time systems, accurate estimates of the worst-case execution time of programs are required for real-time modelling and veri cation, scheduling analysis, feasibility analysis, and dimensioning of the system hardware. At present, such estimates are produced by measuring program runs on inputs which are believed to produce long execution times. Unfortunately, such measurements provide no guarantee for nding the worst execution time, thereby producing unsafe systems. To obtain safe estimates (estimates which do not underestimate the worst-case time), we have to use formal static analysis. Because the market demands high performance, low cost products, we must use optimizing compilers when developing software for real-time systems. An optimizing compiler improves the performance of a program and reduces the size of the code, both important factors to save costs while maintaining performance. An optimizing compiler makes static analysis of a program more di cult by complicating the relationship between the program source code (where we can obtain knowledge about possible program executions) and the object code (where we can nd concrete execution times). In this thesis, we present (1) a new framework for static timing analysis of optimized programs and (2) co-transformation, a new approach to keep track of timing information while performing the various transforming and optimizing steps in a compiler. The co-transformer is based on a close cooperation between compiler and timing analyzer. We have implemented a prototype co-transformer, and evaluated it using a representative set of compiler optimizations. We show that the idea is feasible, but that much more work is needed to design a datastructure powerful enough to capture all necessary information about program execution. In addition, the thesis points out some directions for future research in the eld of worst-case execution time analysis in particular and the real-time programming eld in general.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Facilitating worst-case execution times analysis for optimized code

In this paper we present co-transformation, a novel approach to the mapping of execution information from the source code of a program to the object code for the purpose of worst-case execution time (WCET) analysis. Our approach is designed to handle the problems introduced by optimizing compilers, i.e. that the structure of the object code is very different from the structure of the source cod...

متن کامل

A Tool for Automatic Flow Analysis of C-programs for WCET Calculation

Bounding the Worst Case Execution Time (WCET) of programs is essential for real-time systems. To be able to do WCET calculations, the iteration bounds for loops and recursion must be known. We describe a newly developed prototype tool that calculates these bounds automatically, thereby avoiding the need for manual annotations by the programmer. The analysis is based on an intermediate code repr...

متن کامل

A Worst Case Timing Analysis Technique for Optimized Programs

We propose a technique to analyze the worst case execution times (WCETs) of optimized programs. Our work is based on a hierarchical timing analysis technique called the extended timing schema (ETS). A major hurdle in applying the ETS to optimized programs is the lack of correspondences in the control structure between the optimized machine code to be analyzed and the original source program wri...

متن کامل

Classification of Code Annotations and Discussion of Compiler-Support for Worst-Case Execution Time Analysis

Tools for worst-case execution time (WCET) analysis request several code annotations from the user. However, most of them could be avoided or being annotated more comfortably if the compilers would support WCET analysis. This paper provides a clear categorization of code annotations for WCET analysis and discusses the positive impact on code annotations a compiler-support on WCET analysis would...

متن کامل

Sound and Efficient Wcet Analysis in the Presence of Timing Anomalies1

Worst-Case-Execution-Time (WCET) analysis computes upper bounds on the execution time of a program on a given hardware platform. Abstractions employed for static timing analysis can lead to non-determinism that may require the analyzer to evaluate an exponential number of choices even for straight-line code. Pruning the search space is potentially unsafe because of “timing anomalies” where loca...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1997